package com.cdream.basic.algorithm.leetcode.sort;

/**
 * @author cdream
 * @date 5/15/21
 */
public class Question88 {
    public void merge(int[] nums1, int m, int[] nums2, int n) {
        // 1. 两个标志位，开始位置，新元素放置的位置
        int i = m-1;
        int j = n-1;
        int k = m + n - 1;
        while (i >= 0 || j >= 0) {
            if (i == -1) {
                nums1[k--] = nums2[j--];
            } else if (j == -1) {
                nums1[k--] = nums1[i--];
            } else if (nums1[i] > nums2[j]) {
                nums1[k--] = nums1[i--];
            } else {
                nums1[k--] = nums2[j--];
            }
        }

    }
}
